function deepClone (obj) {
  // 如果是原始类型，直接返回
  if (obj === null || typeof obj !== 'object') {
    return obj;
  }

  // // 处理日期类型
  // if (obj instanceof Date) {
  //   return new Date(obj.getTime());
  // }

  // // 处理数组
  // if (Array.isArray(obj)) {
  //   let cloneArr = [];
  //   for (let i = 0; i < obj.length; i++) {
  //     cloneArr[i] = deepClone(obj[i]);
  //   }
  //   return cloneArr;
  // }

  // 处理普通对象
  let cloneObj = {};
  for (let key in obj) {
    if (obj.hasOwnProperty(key)) {
      cloneObj[key] = deepClone(obj[key]);//遍历加这个
    }
  }

  // 返回深拷贝的对象
  return cloneObj;
}

// 使用示例
const originalObject = {
  name: "Qwen",
  info: {
    launchYear: 2024,
    createdBy: "阿里云"
  },
  hobbies: ["阅读", "编程"]
};

const clonedObject = deepClone(originalObject);
console.log(clonedObject);